Mazsalaca on kaupunki Pohjois-Latviassa Vidzemen historiallisella alueella. Vuoden 2009 kuntauudistuksen myötä se on kuulunut Mazsalacan kuntaan, jonka hallinnollinen keskus Mazsalaca on. Kunta muodostettiin entisistä Ramatan, Sēļin ja Skaņkalnen kunnista.
Varhaisimmat merkit asutuksesta kaupungin alueella ovat 7 000 vuotta vanhoja. Alueelta on löydetty yli 315 tuolta ajalta peräisin olevaa hautaa ja alue onkin suurin tunnettu kivikautinen hautauspaikka Pohjois-Euroopassa. Ennen latvialaisasutusta alueella asui liiviläisiä, jotka jättivät jälkensä alueen paikannimistöön. Vuonna 1528 rakennettiin Valtenbergin kartano, joka sijaitsi nykyisen kaupunginkoulun paikalla. Vuonna 1864 Valtenbergin kartano alkoi vuokrata maata tiluksiltaan ja alueelle muutti enemmän väkeä. Mazsalaca sai kaupungin oikeudet vuonna 1928. Vuonna 1937 kaupunkiin rakennettiin rautatie Riiasta. 1966 kaupunkiin tuli elokuvateatteri, sairaala ja koulu. Nykyisin suuri osa kaupunkilaisista saa elantonsa maanviljelyksestä, metsänhoidosta ja palveluista.
Vuonna 2009 kaupunki oli kansainvälisissä uutisissa, kun sen alueelle väitettiin pudonneen meteoriitti. Tapaus herätti kuitenkin epäilyjä ja myöhemmin tapaus paljastui Tele2-yhtiön markkinointitempaukseksi.